home *** CD-ROM | disk | FTP | other *** search
/ ...taking it to the Macs! / ...taking it to the Macs!.iso / Extras / Internet Developer Demos / Bare Bones Software Goodies / PopupFuncs 2.8.1 / PopupFuncs Notes.c < prev    next >
Text File  |  1996-12-18  |  12KB  |  335 lines

  1. /*
  2. PopupFuncs 2.8 Notes
  3. ---------- --- -----
  4.  
  5. June 25, 1996
  6.  
  7. Because PopupFuncs is so simple to use, this text file constitutes the
  8. documentation for installing and using PopupFuncs. It also contains
  9. up-to-date news and information.
  10.  
  11. The license agreement for PopupFuncs is at the end of this file. Please
  12. read it before installing and using the software.
  13. */
  14.  
  15. #pragma mark What is PopupFuncs?
  16.  
  17. /*
  18. What is PopupFuncs?
  19. ---- -- -----------
  20.  
  21. PopUpFuncs (“PUF”) is a productivity tool for developers. When invoked
  22. by clicking on a control in a source code window’s title bar, it
  23. creates a popup menu of every function contained in a source code file,
  24. allowing you to see instantly the contents of an unfamiliar file. If a
  25. name is selected from the menu, the file is instantly scrolled to the
  26. beginning of that function. PopUpFuncs works with CodeWarrior, MPW,
  27. THINK C/Symantec C++, SADE, BBEdit, and QUED/M, and parses C, C++,
  28. Pascal, Object Pascal, assembler, Rez, Fortran, and Java source files.
  29.  
  30. PopUpFuncs is extensible through an XCMD-like protocol. This package
  31. includes a language sensitive block-commenting and uncommenting tool
  32. which operates on the current selection. Hold the command key down
  33. while clicking on a control to get the XPOP menu. This package also
  34. includes the source code to this XPOP, as well as everything you need
  35. to build your own XPOPs.
  36.  
  37. PopUpFuncs is very fast, highly addictive, and VERY useful.
  38.  
  39. To install PopUpFuncs, launch the Installer and install PopupFuncs in
  40. your copy of BBEdit, CodeWarrior, MPW, THINK C, THINK Project Manager,
  41. Symantec Project Manager, or QUED/M. Do this now, and you’ll be able to
  42. try out PopUpFuncs on this very file!
  43. */
  44.  
  45. #pragma mark Installation
  46.  
  47. /*
  48. Installation
  49. ------------
  50.  
  51. To install PopupFuncs, launch the “PopupFuncs Installer” application.
  52. For each editor you wish to use PopupFuncs in, click the “Install” button
  53. and select the editor. (The editor must not be running at the time.)
  54.  
  55. After you have installed PopupFuncs in your editor(s), click the “Quit”
  56. button.
  57. */
  58.  
  59. #pragma mark Standard File Hacks
  60.  
  61. /*
  62. Standard File Hacks
  63. -------- ---- -----
  64.  
  65. There are some third-party extensions which modify the standard “Open” and
  66. “Save” dialogs (known colloquially as “Standard File”). In a couple of
  67. known cases, some of these extensions have a bug which causes correctly
  68. written applications to crash. Specifically:
  69.  
  70. -    “Click, there it is!”, version 1.0.1. Version 1.0.4 or later fixes
  71.     this problem. Registered owners should contact the author for more
  72.     information.
  73.     
  74. -    Quickeys version 2.1 also appears to have a similar problem.
  75.  
  76. If either of these extensions is installed, the PopupFuncs installer will
  77. crash when you click the “Choose...” button. As a workaround, if you have
  78. System 7.5 installed, you can simply drag a supported application to the
  79. status area in the PopupFuncs installer's window.
  80. */
  81.  
  82. #pragma mark Supported Editors
  83.  
  84. /*
  85. Supported Editors
  86. --------- -------
  87.  
  88. The following text editors (including integrated development environments)
  89. work with PopupFuncs. If you are writing an editor and would like to work
  90. with PopupFuncs, please write to us for information on the PopupFuncs API.
  91.  
  92. PopupFuncs works with the following editors:
  93.  
  94.     BBEdit 2.5 and later (Bare Bones Software) (see note below)
  95.     BBEdit Lite 2.3 and later (Bare Bones Software)
  96.     THINK C 5.0 and later (Symantec)
  97.     Symantec C++ 6.0 and later (Symantec)
  98.     CodeWarrior 1.0.1 and later (Metrowerks)
  99.     MPW Shell 3.0 and later (Apple Computer)
  100.     QUED/M 2.7 and later (Nisus Software)
  101.  
  102. If you are using the “native” MPW Shell, be advised that versions of the
  103. native Shell prior to 3.4b6 are incompatible with PopupFuncs. The first
  104. compatible version of the native MPW Shell is 3.4b6, which was released
  105. as part of the ETO 18 distribution.
  106. */
  107.  
  108. #pragma mark Changes from Previous Versions
  109.  
  110. /*
  111. Changes from Previous Versions
  112. ------- ---- -------- --------
  113.  
  114. Version 2.8.1:
  115.  
  116.     -    incorporates various and sundry scanner fixes.
  117.     
  118.     -    the installer no longer allows installation of the Technicolor
  119.         code into BBEdit, since BBEdit now supports syntax-directed
  120.         coloring of text.
  121.         
  122. Version 2.8:
  123.  
  124.     -    incorporates fix to some reported problems in the C scanner.
  125.     
  126.     -    the C++ scanner now properly handles template-based typedefs.
  127.     
  128.     -    installs version 0.9.6 of Technicolor, which fixes some bugs
  129.         in that system.
  130.         
  131.     -    the suffix mapping now processes file names of the form "foo.c,xx"
  132.         (where "xx" is some number), so that PopupFuncs is enabled for files
  133.         created by MPW's "CompareRevisions" script.
  134.     
  135.     -    adds Java support
  136.     
  137.     -    incorporates improvements to assembly-language scanning to
  138.         facilitate use with PowerPC assembly language.
  139.         
  140. Version 2.7:
  141.  
  142.     -    incorporates rewritten Pascal scanner, with much better support
  143.         for Object Pascal, and generally more reliable operation.
  144.         
  145.     -    C++ scanner adds support for overloaded operators.
  146.  
  147. Version 2.6.1:
  148.  
  149.     -    Incorporates support for CodeWarrior 1.3 (CW7 distribution)
  150.     
  151. Version 2.6:
  152.  
  153.     -    incorporates support for MPW Shell 3.4b6 and later
  154.     
  155. */
  156.  
  157. #pragma mark A Note About Technicolor
  158.  
  159. /*
  160. A Note About Technicolor
  161. - ---- ----- -----------
  162.  
  163. As a convenience, PopupFuncs provides a facility for installing
  164. Chris Thomas' "Technicolor" utility. Technicolor is a tool for providing
  165. syntax-directed text coloring in environments that don't otherwise offer
  166. such a capability. In addition to installation from the PopupFuncs
  167. installer, the standard PopupFuncs distribution includes the latest
  168. version (0.9.5, as of this writing) of Technicolor.
  169.  
  170. Technicolor is not a product of Bare Bones Software, and we cannot
  171. support it. Please direct questions regarding Technicolor to Chris
  172. Thomas <ckt@best.com>.
  173.  
  174. */
  175.  
  176. #pragma mark Using PopupFuncs
  177.  
  178. /*
  179. Using PopupFuncs
  180. ----- ----------
  181.  
  182. PopupFuncs will place a pair of red dots in the title bar of any window that
  183. it believes contains a source file. To pop up a menu of functions in your
  184. source file, click either of the red dots. To sort the menu items by name,
  185. hold down the Shift key when clicking. To show the available PopupFuncs
  186. extensions, hold down the Command key when clicking.
  187.  
  188. In Rez source files, PopupFuncs will list defined resources. In C and C++
  189. source files, PopupFuncs will show types in addition to functions.
  190. */
  191.  
  192. #pragma mark Customizing PopupFuncs
  193.  
  194. /*
  195. Customizing PopupFuncs
  196. ----------- ----------
  197.  
  198. PopupFuncs includes a number of special-purpose resources, which can be
  199. edited to customize the behavior of PopupFuncs. These resources, along 
  200. with a ‘TMPL’ resource, are included in the PopupFuncs installer. If
  201. you change these resources in the PopupFuncs installer, the changes
  202. will be carried along with subsequent installations of PopupFuncs.
  203.  
  204. The resources have a type of ‘puf!’, and the standard ones are as follows:
  205.  
  206. ‘puf!’ 128 is a list of language-to-suffix mappings. The language code
  207. is zero-based, and progresses as follows:
  208.  
  209.     none = 0;
  210.     C = 1;
  211.     C++ = 2;
  212.     Pascal = 3;
  213.     Object Pascal = 4;
  214.     Rez = 5;
  215.     68K assembler = 6;
  216.     Fortran = 7;
  217.     
  218. You can edit the suffix mappings to add your own custom suffixes.
  219.  
  220. ‘puf!’ 129 is used to configure the 68K assembly-language parser. Each
  221. entry in this resource is a pair of label/operand pairs:
  222.  
  223.     0   - mark the label , major. (e.g. PROC,FUNC)
  224.     1   - mark the label, minor 
  225.     2   - mark the parameter, major. Useful for macros whose first parameter 
  226.             is the real function name.
  227.     3    - mark the label, local, with a † next to it (e.g. RECORD)
  228. */
  229.  
  230. #pragma mark Problems?
  231.  
  232. /*
  233. Problems?
  234. ---------
  235.  
  236. If you find that PopUpFuncs has difficulty with a particular source file,
  237. please send us a copy of your file. If the source file contains sensitive
  238. content, use the “Source Masher” utility to generate a copy of the source
  239. file without the sensitive information.
  240. */
  241.  
  242. #pragma mark Thanks!
  243.  
  244. /*
  245. Thanks!
  246. -------
  247.  
  248. Thank you for using PopupFuncs; we appreciate your support. If you
  249. have questions or problems, we encourage you to write, call, or send
  250. e-mail. (E-mail is the recommended way to contact us; we can reply very
  251. quickly, and it conserves paper.)
  252.  
  253. Bare Bones Software, Inc.
  254. P.O. Box 1048
  255. Bedford, MA 01730-1048
  256. (617) 778-3100 phone
  257. (617) 778-3111 fax
  258. support@barebones.com [internet]
  259. http://www.barebones.com/ [World Wide Web]
  260. */
  261.  
  262. #pragma mark Legalese
  263.  
  264. /*
  265. License Agreement                                                        
  266. ------- ---------
  267.  
  268. You, the Licensee, assume responsibility for the selection of the
  269. program PopupFuncs to achieve your intended results, and for the
  270. installation, use, and results obtained from the program.  installing
  271. and using the program constitutes your acceptance of these terms and
  272. conditions.  If you do not accept these terms and conditions, then do
  273. not install or use the software.
  274.  
  275. License
  276. -------
  277.  
  278. You may use the program on a single machine and copy the program into
  279. any machine-readable or printed form for backup or support of your use
  280. of the program on the single machine, provided that no more than one
  281. copy of the program may be used on a single machine by more than one
  282. user at a time. You may distribute copies of the program to other
  283. individuals for non-commercial purposes, but may not sell, license, or
  284. include the program as part of a commercial distribution or compilation
  285. without express written permission of Bare Bones Software, Inc.
  286.  
  287. Limited warranty and limitation of remedies
  288. ------- -------- --- ---------- -- --------
  289.  
  290. The program and any support from Bare Bones Software, Inc., are provided
  291. “as is” and without warranty , express and implied, including but not
  292. limited to any implied warranties of merchantability and fitness for a
  293. particular purpose.  In no event will Bare Bones Software, Inc. be
  294. liable for any damages, including lost profits, lost savings, or other
  295. incidental or consequential damages, even if Bare Bones Software, Inc.
  296. is advised of the possibility of such damages, or for any claim by you
  297. or any third party.  
  298.  
  299. General Terms
  300. ------- -----
  301.  
  302. This Agreement can only be modified by a written agreement signed by you
  303. and Bare Bones Software, Inc., and changes from the terms and conditions
  304. of this Agreement made in any other manner will be of no effect.  If any
  305. portion of this Agreement shall be held invalid, illegal, or
  306. unenforceable, the validity, legality, and enforceability of the
  307. remainder of the Agreement shall not in any way be affected or impaired
  308. thereby.  This Agreement shall be governed by the laws of The
  309. Commonwealth of Massachusetts, without giving effect to conflict of laws
  310. provisions thereof.  As required by United States export regulations,
  311. you shall not permit export of the program or any direct products
  312. thereof to any country to which export is then controlled by the United
  313. States Office of Export Administration, unless you have that agency’s
  314. prior written approval.  
  315.  
  316. Use, duplication and disclosure by the United States Government of the
  317. program or any part thereof is subject to restrictions as set forth in
  318. subdivision (g)(3) of Rights in Data - General Clause in Federal
  319. Acquisition Regulations (“FAR”) 52.227.14, the Commercial Computer
  320. Software - Restricted Rights Clause in FAR 52.227.19. and/or subdivision
  321. c(1)(ii) of Rights in Technical Data and Computer Software Clause in
  322. Department of Defense FAR 252.227.7013.
  323.  
  324. Acknowledgment
  325. --------------
  326.  
  327. You acknowledge that you have read this agreement, understand it, and
  328. agree to be bound by its terms and conditions.  You further agree that
  329. it is the complete and exclusive statement of the agreement between you
  330. and Bare Bones Software, Inc. which supersedes all proposals or prior
  331. agreements, oral or written, and all other communications between you
  332. and Bare Bones Software, Inc. relating to the subject matter of this
  333. agreement.
  334. */
  335.